Error with multiple definitions of function

Here is a highly simplified but hopefully relevant view of what happens when you build your code in C++. C++ splits the load of generating machine executable code in following different phases – Preprocessing – This is where any macros – #defines etc you might be using get expanded. Compiling – Each cpp file along … Read more

What are the differences between unit tests, integration tests, smoke tests, and regression tests? [closed]

Unit test: Specify and test one point of the contract of single method of a class. This should have a very narrow and well defined scope. Complex dependencies and interactions to the outside world are stubbed or mocked. Integration test: Test the correct inter-operation of multiple subsystems. There is whole spectrum there, from testing integration … Read more

What is RESTful programming?

REST is the underlying architectural principle of the web. The amazing thing about the web is the fact that clients (browsers) and servers can interact in complex ways without the client knowing anything beforehand about the server and the resources it hosts. The key constraint is that the server and client must both agree on … Read more

What exactly do “IB” and “UB” mean?

IB: Implementation-defined Behaviour. The standard leaves it up to the particular compiler/platform to define the precise behaviour, but requires that it be defined. Using implementation-defined behaviour can be useful, but makes your code less portable. UB: Undefined Behaviour. The standard does not specify how a program invoking undefined behaviour should behave. Also known as “nasal … Read more

What is a Y-combinator? [closed]

A Y-combinator is a “functional” (a function that operates on other functions) that enables recursion, when you can’t refer to the function from within itself. In computer-science theory, it generalizes recursion, abstracting its implementation, and thereby separating it from the actual work of the function in question. The benefit of not needing a compile-time name … Read more

What is AJAX, really?

Asynchronous JavaScript And Xml. A technique for achieving bi-directional, script-driven communications between Web browsers and servers via HTTP. See also: definition on Wikipedia AJAX Introduction on w3schools Ajax Workshop 1 on Ajax Lessons Edit: As pointed out by Nosredna, JSON is often used in place of XML.