Ответы пользователя по тегу C++
  • Как получить температуру процессора на ноутбуке посредством win API?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Могу предложить поискать опенсорсные аналоги аиды и изучать код
    Ответ написан
    Комментировать
  • Есть ли такое сообщество, в котором программисты тренеруются собеседоваться, а интервьюеры собеседовать?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    А какие именно проблемы возникают? Попробуй записать их и поискать подходящий ответ для подобной ситуации, допустим если не знаешь как решить какую-то задачу, то можно сказать, что сейчас ты ответить не можешь, но если такая задача возникнет в процессе работы, ты погуглишь, изучишь проблему и найдёшь решение. Но я диванный эксперт и на собеседованиях не был, не слушай меня.
    Ответ написан
    Комментировать
  • Что изучить C или C++?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Да впрочем не особо то и важно, всё равно на отличном уровне не выучишь, да и не надо оно, помимо языка знать придётся ещё очень много вещей, по си можешь почитать "Керниган,Ритчи - Программирование на C", книжка небольшая в принципе, по C++ "Прата С. - Язык программирования С++. Лекции и упражнения", эта побольше, но действительно годная и рассказывается C++11, который делает C++ мощнее и удобнее.
    Ответ написан
    1 комментарий
  • C++ как достать часть из строки?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    В прошлом вопросе ты спрашивал про частный случай для 2 слов, а в эмуляторе терминала их может быть больше, допустим cat file1 file2 > file3. Если делать просто, то используй std::stringstream, инициализируешь его строкой и по слову сохраняешь в list или vector.
    #include <iostream>
    #include <sstream>
    #include <list>
    using std::cout;
    using std::endl;
    
    int main() {
    	std::string str = "cat file1 > file2";
    	std::stringstream ss(str);
    	
    	std::list<std::string> tokens;
    	std::string tmpString;
    	while(ss >> tmpString)
    		tokens.push_back(tmpString);
    		
    	for(auto token : tokens)
    		cout << token << endl;
    	return 0;
    }

    И прошу как можно проще я новичок и код который мне кинули в прошлом вопросе я даже не понял а я не могу использовать код который не понимаю не по моему это

    это правильно, в программировании нет места магии :)
    spoiler
    ну если только совсем чуть-чуть

    P.S. на в таком случае будет сложно обрабатывать подобный случай rm -rf "/home/user/some dir" когда в одном из аргументов есть пробел
    Ответ написан
    Комментировать
  • Возможно ли внутри Си-программы сменить поток вывода?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Речь же про C++ да? Что значит сменить поток вывода? Если вы про cout, то никто не мешает объявить свой объект cout не из пространства имён std.
    Работу с файлами хочется обойти

    Если вы собираетесь писать в файл, то с помощью какой магии вы собираетесь это делать? Ну можно конечно напрямую в сектора жёсткого диска писать, но это такое себе решение.
    Ответ написан
  • Неявное наследование private ?!?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Да, всё верно, в этом и прелесть наследования
    Ответ написан
    Комментировать
  • План изучения программирования?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    А какая цель? Если изучать - изучайте весь вышеперечисленный список, правда забудете быстро, если программировать, то программируйте и параллельно читайте книги по тому направлению, в котором развиваетесь.
    Ответ написан
    Комментировать
  • Необходимые навыки для junior C++?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Понятие junior очень субъективно и в разных компаниях минимальный набор знаний разный, поэтому лучше поищите вакансии и посмотрите там
    Ответ написан
    Комментировать
  • С++ как работать с строками?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Используйте std::regex
    Выражение что-то вроде R"(([a-zA-Z]+)\s*([0-9]+))"
    Ответ написан
    Комментировать
  • Как использовать Intel-синтаксис ассемблера в CLion?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Так ошибки выдаёт не CLion, а компилятор, который он использует
    Ответ написан
    Комментировать
  • Как построить график С#?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Не увидел в задании ничего про график. Может быть нужно вот такое:
    449c923040ac4af5a900cf599189f0da.png
    Т.е. рисуем квадрат, а дальше на нём(по периметру) точки с равным шагом начиная с верхнего левого угла.
    P.S. Переведите, не все могут знать украинский.
    P.P.S В тегах C++, а в названии C#, исправьте
    Ответ написан
  • Стоит ли в качестве первого языка программирования выбирать C++?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    P.S Посоветуйте хороший учебник по С++ для новичка.

    "Прата С. - Язык программирования С++. Лекции и упражнения - 2011."
    Рассказываются основы, но при этом автор постоянно упоминает про новые возможности C++11, а они реально крутые. Если осилите эту книжку, будете хорошо знать C++, но вот только помимо самого C++ придётся изучить ещё много всего, даже ассемблер :). И да, я посоветую не зацикливаться на одной книге, попробуйте несколько и выберите ту, что будет по душе. Список годных книг найдите тут cyberforum ru В разделе C++ для начинающих есть закреплённая тема.
    Ответ написан
    Комментировать
  • Как в qt таблице, сделать просчет в реальном времени?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Соединить сигнал изменения ячейки со слотом, который будет смотреть, что изменилось и пересчитывать, а вообще, почитайте "Боровский А. - Qt4.7+. Практическое программирование на C++ (2012)" там в начале была реализации программы на подобии excel
    Ответ написан
    Комментировать
  • Как писать кроссплатформенные приложения на C++?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Учите Qt, очень удобная штука, первые шаги советую сделать без IDE, чтоб понять, как оно работает. Из коробки в качестве IDE идёт qt creator, не сказать, что прям идеальный, но довольно удобный инструмент, вроде можно и VS использовать, но я не пробовал.
    Ответ написан
    Комментировать
  • Qt. Как создать с инициализацией объект класса с членами-объектами на стеке?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    А вы не создавайте их на стеке ;)
    Ответ написан
    Комментировать
  • Qt. Как использовать сигналы-слоты?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Сделайте отдельный класс для окна. Т.е. как-то так:
    main.cpp:
    #include "mainwindow.h"
    #include <QtWidgets/QApplication>
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        MainWindow w;
        w.show();
    
        return a.exec();
    }

    mainwindow.h:
    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    
    #include <QtWidgets/QMainWindow>
    #include <QtWidgets/QPushButton>
    
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
    public slots:
        void buttonPressed();
    private:
        void setupUi();
        QPushButton *pushButton;
    };
    
    #endif // MAINWINDOW_H

    mainwindow.cpp:
    #include "mainwindow.h"
    
    #include <QMessageBox>
    
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent)
    {
        setupUi();
    }
    
    MainWindow::~MainWindow()
    {
    
    }
    
    void MainWindow::buttonPressed()
    {
        QMessageBox::warning(this, "Hello", "Hello, World");
    
    }
    
    void MainWindow::setupUi()
    {
        if (objectName().isEmpty())
            setObjectName(QStringLiteral("MainWindow"));
    
        resize(400, 300);
        setCentralWidget(new QWidget(this));
    
        pushButton = new QPushButton(centralWidget());
        pushButton->setObjectName(QStringLiteral("pushButton"));
        pushButton->setGeometry(QRect(90, 90, 92, 27));
    
        connect(pushButton, SIGNAL(clicked(bool)), this, SLOT(buttonPressed()));
    
    }

    *.pro:
    QT       += core gui
    
    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
    
    TEMPLATE = app
    TARGET = untitled27
    INCLUDEPATH += .
    
    HEADERS += mainwindow.h
    SOURCES += main.cpp mainwindow.cpp
    Ответ написан
    Комментировать
  • Qt. Зачем по умолчанию создается производный класс?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Попробуйте создать сначала без creator'а и собрать "вручную", т.е. в консоли, используя qmake. Из годных книг могу ещё посоветовать "Боровский А. - Qt4.7+. Практическое программирование на C++ (2012)", информация немного устарела, но тем не менее прочитать стоит.
    Ответ написан
    Комментировать
  • Qt. Как сделать плавающие виджеты внутри табов?

    devalone
    @devalone Автор вопроса
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    В общем, QMainWindow можно запихнуть в таб. В дизайнере сделать этого не получилось, поэтому я создал две формы для каждого таба и в конструкторе главной формы написал:
    tab0 = new Tab0(this);
    tab1 = new Tab1(this);    
     
    ui->tabWidget->addTab(tab0, "tab0");
    ui->tabWidget->addTab(tab1, "tab1");

    где Tab0 и Tab1, классы унаследованные от QMainWindow.
    Ответ написан
    Комментировать