Best C++ IDE (preferably free)?

wonder

Expert
Licensed User
Longtime User
Hello again,

I'm learning C++ and I'd like to know your opinion on which IDE (Windows) should I roll with. :)
 
Last edited:

Roycefer

Well-Known Member
Licensed User
Longtime User
Take a look at NetBeans. It's highly extensible, customizable, open source, free (in both senses), cross platform and very actively developed. You can develop in Java, C/C++, HTML5, PHP on it and there are plugins for many other languages (except B4X).
 

MaFu

Well-Known Member
Licensed User
Longtime User
VisualStudio 2015 Community Edition.
Free for single developer or small groups (also for creating commercial programs) and almost the same as the professional edition.
I use it for C, C++ C#, Pascal, Python and Arduino programming.
 

barx

Well-Known Member
Licensed User
Longtime User

barx

Well-Known Member
Licensed User
Longtime User
Should be enough... ;)

Capture.png

Just about, Don't get too carried away with the extensions though, lol

Standard install is about 26GB I think
 

wonder

Expert
Licensed User
Longtime User
First day with C++ (Visual Studio) and I was able to come up with a simple calculator! :D

BrunoCalc.h
B4X:
#pragma once
double addition(double a, double b);
double multiplication(double a, double b);
double subtraction(double a, double b);
double division(double a, double b);

BrunoCalc.cpp
B4X:
#include "stdafx.h"
#include <iostream>
#include <string>

#include "BrunoCalc.h"

double addition(double a, double b)
{
    return (a + b);
}

double multiplication(double a, double b)
{
    return (a * b);
}

double subtraction(double a, double b)
{
    return (a - b);
}

double division(double a, double b)
{
    return (a / b);
}

int main()
{
    std::string expr;
    while (expr != "`")
    {
        std::cout << "Calculate: ";
        std::getline(std::cin, expr);

        if (expr.find("+") != -1)
        {
            std::string part1;
            std::string part2;
            part1 = expr.substr(0, expr.find("+"));
            part2 = expr.substr(expr.find("+") + 1, expr.length());
            double a = atof(part1.c_str());
            double b = atof(part2.c_str());
            std::cout << "Result:    " << addition(a, b) << std::endl;
        }
        else if (expr.find("-") != -1)
        {
            std::string part1;
            std::string part2;
            part1 = expr.substr(0, expr.find("-"));
            part2 = expr.substr(expr.find("-") + 1, expr.length());
            double a = atof(part1.c_str());
            double b = atof(part2.c_str());
            std::cout << "Result:    " << subtraction(a, b) << std::endl;
        }
        else if (expr.find("*") != -1)
        {
            std::string part1;
            std::string part2;
            part1 = expr.substr(0, expr.find("*"));
            part2 = expr.substr(expr.find("*") + 1, expr.length());
            double a = atof(part1.c_str());
            double b = atof(part2.c_str());
            std::cout << "Result:    " << multiplication(a, b) << std::endl;
        }
        else if (expr.find("/") != -1)
        {
            std::string part1;
            std::string part2;
            part1 = expr.substr(0, expr.find("/"));
            part2 = expr.substr(expr.find("/") + 1, expr.length());
            double a = atof(part1.c_str());
            double b = atof(part2.c_str());
            std::cout << "Result:    " << division(a, b) << std::endl;
        }
        std::cout << std::endl;
    }
    return 0;
}
 
Top