PDA

View Full Version : سوال: مشکل No Such Value



h02man
چهارشنبه 03 خرداد 1396, 15:17 عصر
سلام
من تازه از محیط ویژوال استادیو به QT آمدم
کسی میدونه مشکل این وضعیتی که در عکس دیده میشه از چی میتونه باشه ؟ چرا خروجی بعضی از API ها No Such Value هست ؟
ویندوز من 7 - 64بیت هست و QT5.7
خودم حدسم این بود که کامپایلر رو باید عوض کنم ولی چه روی Mingw چه VS2014 میزارم بازم این حالت روی خروجی بعضی از API پیش میاد .
145302

negative60
چهارشنبه 03 خرداد 1396, 23:01 عصر
خطای فاحش سینتکس دارید و ربطی به ویژوال استادیو یا کیوت نداره الان انتظار دارید برای متغیر RTime چه اتفاقی بیوفته ؟

h02man
شنبه 06 خرداد 1396, 09:42 صبح
http://doc.qt.io/qt-5/qtime.html
از اینجا نگاه کردم
میخوام زمان حال رو بگیرم

h02man
شنبه 06 خرداد 1396, 10:01 صبح
خطای فاحش سینتکس دارید و ربطی به ویژوال استادیو یا کیوت نداره الان انتظار دارید برای متغیر RTime چه اتفاقی بیوفته ؟
شاید حق با شما باشه اما منظور شما اینه که syntax مشکل داشته باشه کامپایلر ایراد نمیگیره ؟!

negative60
دوشنبه 08 خرداد 1396, 16:28 عصر
کلاس QTime رو اینکلود نکردید، و فقط اسم متغیر RTime رو توی تابع main نوشتید!
شما اصول اولیه سینتکس ++c رو رعایت نکردید خوب مشخص برنامه کامپایل نمی‌شه پیشنهاد می‌کنم قبل از اینکه با فرمورکی شروع به کار کنید اول ++c یاد بگیرید

#include <QApplication>
#include <QDebug>
#include <QTime>


int main(int argc, char *argv[])
{
QString TheTime = QTime::currentTime().toString(); // get current time
qDebug() << "Current time is: " << TheTime; //print current time
return 0;
}

حامد مصافی
چهارشنبه 10 خرداد 1396, 16:30 عصر
وقتی متغیری استفاده نشه در حین کامپایل عملا حذف میشه. در واقع در خروجی نهایی شما خط مقداردهی RTime حذف شده. از این دو راه یکی رو برگزینید:

اونو استفاده کنید
(Q_UNUSED(RTime

h02man
سه شنبه 09 آبان 1396, 10:22 صبح
جواب خیلی جالبی دادی اقای negative60

2 تا پایینتر توضیح دادم

h02man
سه شنبه 09 آبان 1396, 10:28 صبح
بله به دلیل استفاده نکردن از value بود
ممنون از حامد مصافی (http://barnamenevis.org/member.php?6808-%D8%AD%D8%A7%D9%85%D8%AF-%D9%85%D8%B5%D8%A7%D9%81%DB%8C)

h02man
سه شنبه 09 آبان 1396, 10:31 صبح
کلاس QTime رو اینکلود نکردید، و فقط اسم متغیر RTime رو توی تابع main نوشتید!
شما اصول اولیه سینتکس ++c رو رعایت نکردید خوب مشخص برنامه کامپایل نمی‌شه پیشنهاد می‌کنم قبل از اینکه با فرمورکی شروع به کار کنید اول ++c یاد بگیرید

#include <QApplication>
#include <QDebug>
#include <QTime>


int main(int argc, char *argv[])
{
QString TheTime = QTime::currentTime().toString(); // get current time
qDebug() << "Current time is: " << TheTime; //print current time
return 0;
}



عزیز جان فکر کنم شما هنوز فرق دیباگ با کامپایل رو نمیدونید ( بعد از کامپایل میشه دیباگ کرد و اگر تو عکس دقت کنید مشخصه به دیباگ رسیده و رو چه خطی هست ! )در ضمن اگر کلاس Qtime اینکلود نمیشد کامپایلر اجازه ورود به دیباگ نمیداد یعنی اصلا کامپایل نمیشد !
در ضمن Qtime در کلاس Clog اضافه شده بود .

و 3 تا چیز برای خودتون دارم :


1- برام عجیب بود که شما مثلا به عنوان کاربر دائمی و با تجربه چطور حدث نزدید که ممکنه تو کلاس clog هدر qtime اضافه شده باشه حد اقل اول باید سوال میکردید( از رنگ QTIME هم میتونستید بفهمید که انکلود شده)
2-هنوز نمیدونید که هدر اضافه نشه اصلا به دیباگ نمیرسه و زمان کامپایل error میده ؟
3- من 10 سال هست که C++‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎ رو سیستم های embeded کار میکنم و مشکلی که من داشتم اقا حامد مصافی اشاره کرد این فرم ورک در صورت use نکردن متغیر value رو نشون نمیده.

پیشنهاد میکنم که قبل از مطمئن شدن به کسی پیشنهاد ندید :لبخندساده:

negative60
پنج شنبه 11 آبان 1396, 09:38 صبح
عزیز جان فکر کنم شما هنوز فرق دیباگ با کامپایل رو نمیدونید ( بعد از کامپایل میشه دیباگ کرد و اگر تو عکس دقت کنید مشخصه به دیباگ رسیده و رو چه خطی هست ! )در ضمن اگر کلاس Qtime اینکلود نمیشد کامپایلر اجازه ورود به دیباگ نمیداد یعنی اصلا کامپایل نمیشد !
در ضمن Qtime در کلاس Clog اضافه شده بود .

و 3 تا چیز برای خودتون دارم :


1- برام عجیب بود که شما مثلا به عنوان کاربر دائمی و با تجربه چطور حدث نزدید که ممکنه تو کلاس clog هدر qtime اضافه شده باشه حد اقل اول باید سوال میکردید( از رنگ QTIME هم میتونستید بفهمید که انکلود شده)
2-هنوز نمیدونید که هدر اضافه نشه اصلا به دیباگ نمیرسه و زمان کامپایل error میده ؟
3- من 10 سال هست که C++‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎ رو سیستم های embeded کار میکنم و مشکلی که من داشتم اقا حامد مصافی اشاره کرد این فرم ورک در صورت use نکردن متغیر value رو نشون نمیده.

پیشنهاد میکنم که قبل از مطمئن شدن به کسی پیشنهاد ندید :لبخندساده:




باز هم توصیه می‌کنم حداقل یک سال ++c کار کنید بعد به دنبال استفاده از فریمورک هایی نظیر Qt باشید
ده سال ++c کار کردی ولی‌ هنوز نحوه سوال پرسیدن رو بلد نیستی انتظار دارید از روی یه عکس به دیگران وحی بشه که شما تو کلاس QTimer ، CLog رو اینکلود کردی؟
بعد از ده سال هنوز نمی‌دونی متغیری که استفاده نشه رو نمی‌شه دیباگ کرد و ربطی‌ به فریمورک کیوت نداره؟؟
من یه نمونه کد از نحوه گرفتن زمان جاری برای شما فرستادم به جای تشکر با وقاحت تمام طلبکار هم هستی‌! حیف لطف و وقتی‌ که برای یه عده طلبکار مفت خور گذاشته بشه

h02man
دوشنبه 15 آبان 1396, 13:41 عصر
ده سال ++c کار کردی ولی‌ هنوز نحوه سوال پرسیدن رو بلد نیستی



عزیزم اگرسوالم رو درست نپرسیده بودم اقای حامد مصافی (http://barnamenevis.org/member.php?6808-%D8%AD%D8%A7%D9%85%D8%AF-%D9%85%D8%B5%D8%A7%D9%81%DB%8C)
اینقدر دقیق به جواب درست اشاره نمیکردن .



بعد از ده سال هنوز نمی‌دونی متغیری که استفاده نشه رو نمی‌شه دیباگ کرد و ربطی‌ به فریمورک کیوت نداره؟؟


ربطی به فرم ورک نداره ؟!!!! وای تورو خدا اول عکس رو ببین و دقت کن متغیر a استفاده شده یا نه ؟!!! جواب دیباگم ببین که شده 10 ، بعدم لطفا منو بیخیال شو وقتمو نگیر


146991


من یه نمونه کد از نحوه گرفتن زمان جاری برای شما فرستادم به جای تشکر با وقاحت تمام طلبکار هم هستی‌!
دیگه وقتی جواب رو نمیدونی حد اقل با لحن تحقیر آمیز جواب نده


حیف لطف و وقتی‌ که برای یه عده طلبکار مفت خور گذاشته بشه
حیف بنده خداهایی که تو جواب سوالشونو بدی بهشون توهین بشه به نظرم به جای اینکه همه پستها جوابهای تو خالی بدی و کمیت رو زیاد کنی یا بهتره بگم شو آف کنی یکم به کیفیت جوابات فکر کن